// 创建路由
const router = require('express').Router();
// 导入邮件的api
const api = require('../common/email/index');

// 发送邮件
// 地址：/api/email/send
// 方式：GET
// 参数：email
// 响应格式： json格式
// 示例：http://127.0.0.1:4000/api/email/send?email=XX@qq.com
router.get('/send', async (req, res) => {
    // 获取用户邮箱
    let { email } = req.query;
    if (email) {
        if (/^\w{4,}@qq.com$/.test(email)) {
            // 调用api发送邮箱
            api.getEmailCode(email)
                .then(content => {
                    res.send(content);
                },
                    err => {
                        res.send(err);
                    }
                )
                .catch(err => {
                    res.send(err);
                });
        }
        else{
            res.send({
                code:-1,
                msg:"邮箱格式不正确"
            })
        }
    }
    else {
        res.send({
            code: -1,
            msg: "没有邮箱，请填写"
        })
    }
})

// 校验邮件
// 地址：/api/email/verify
// 方式：GET
// 参数：email,vcode
// 响应数据格式：json
// 示例：http://127.0.0.1:4000/api/email/verify?email=xx@qq.com&vcode=xxxx
router.get('/verify',async(req,res)=>{
    let { email,vcode } = req.query;
    // 判断是否提交了邮箱
    if (email) {
        if (/^\w{4,}@qq.com$/.test(email)) {
            // 调用校验结果
            api.verifyEmailCode(email,vcode)
            .then(
                content=>{
                    res.send(content);
                },
                err=>{
                    res.send(err);
                }
            )
        }
    }
    else {
        res.send({
            code: -1,
            msg: "没有邮箱，请填写"
        })
    }
})


// 把这个路由挂在模块系统下
module.exports = router;